Position editing tool of collage multi-media

ABSTRACT

In accordance with one or more embodiments of the present disclosure, methods and apparatus are provided for flexible and user-friendly position editing of loaded media in a multi-media presentation. In one embodiment, a method for editing the position of loaded media comprises loading a page of a collage document to a client device, the page having a plurality of layers with each layer being associated with a media object, and creating a list of layers of the loaded page with each layer indexed by at least a position in the collage document. The method further includes selecting a first media object, selecting a position editing tool to group the first media object and at least one other media object adjacent to the first media object; and moving the grouped first media object and the at least one other media object to a different position in the collage document. A client device for position editing loaded media is also disclosed.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of and claims priority to U.S. patentapplication Ser. No. 12/495,718, filed Jun. 30, 2009, which claimspriority to U.S. Provisional Patent Application No. 61/078,288 filedJul. 3, 2008 and U.S. patent application Ser. No. 12/347,829, filed Dec.31, 2008, now U.S. Pat. No. 8,365,092, the disclosure of which areincorporated by reference herein in their entirety for all purposes.

This application is related to U.S. patent application Ser. No.12/495,684, filed Jun. 30, 2009, now U.S. Pat. No. 8,893,015, which is acontinuation-in-part of U.S. patent application Ser. No. 12/347,829,filed Dec. 31, 2008, now U.S. Pat. No. 8,365,092, which claims priorityto U.S. Provisional Patent Application No. 61/078,288 filed Jul. 3,2008, the disclosures of which are incorporated by reference herein intheir entirety for all purposes.

This application is also related to pending U.S. patent application Ser.No. 12/347,638, filed Dec. 31, 2008, U.S. patent application Ser. No.12/347,747, filed Dec. 31, 2008, and U.S. patent application Ser. No.12/347,749, filed Dec. 31, 2008, now U.S. Pat. No. 8,627,192, thecontents of which are incorporated by reference herein in theirentirety.

BACKGROUND

1. Technical Field

The present invention generally relates to network-based multi-mediapresentations and more particularly to navigation of media in such amulti-media presentation on a client device.

2. Related Art

Presently, when creating and posting online media presentations, a usermust typically purchase conventional media presentation software, whichmay be expensive, create a media presentation with the conventionalmedia presentation software, which is often time consuming, upload thefile for the media presentation, and then post a link to a file foronline access to the created media presentation, which may requiresecurity features. To view the media presentation, another user mustaccess the site storing the file, pass some form of access securityfeatures, download the file from the communication network, and have thesame software that created the file for viewing. However, this sequenceof creating and downloading the media presentation is often expensive,time-consuming, and inconvenient for each user involved in the process.As such, there exists a need to simplify the process of creating andviewing online media presentations over a communication network.

Furthermore, once the media presentation is created and saved, a usermust be able to access, view, and/or edit the presentation over anetwork, which can require large amounts of bandwidth and time if doneinefficiently, and in particular when dealing with large amounts ofmedia objects. Thus, methods and apparatus for efficiently andeffectively editing media in a media presentation delivered over anetwork are desirable.

SUMMARY

In accordance with one or more embodiments of the present disclosure,methods and apparatus are provided for flexible and user-friendlyediting of loaded media in a multi-media presentation, such that a usermay be able to view and/or edit the presentation.

In one embodiment, a method for editing the position of loaded mediacomprises loading a page of a collage document to a client device, thepage having a plurality of layers with each layer being associated witha media object, and creating a list of layers of the loaded page witheach layer indexed by at least a position in the collage document. Themethod further includes selecting a first media object, selecting aposition editing tool to group the first media object and at least oneother media object adjacent to the first media object; and moving thegrouped first media object and the at least one other media object to adifferent position in the collage document. A client device for positionediting loaded media is also disclosed.

These and other features of the present disclosure will be more readilyapparent from the detailed description of the embodiments set forthbelow taken in conjunction with the accompanying drawings which aredescribed below.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a system configured to facilitate publishing and/orsharing media presentations over a network, in accordance with anembodiment of the present disclosure.

FIGS. 2A-2B illustrate a flow diagram of a method adapted to facilitatepublishing and/or sharing multi-media presentations over a network, inaccordance with an embodiment of the present disclosure.

FIG. 3 illustrates a flow diagram of a method for loading media onto aclient device in accordance with an embodiment of the presentdisclosure.

FIG. 4 illustrates a flow diagram of a method for loading media from aserver device in accordance with an embodiment of the presentdisclosure.

FIGS. 5A and 5B are screen shots of a user interface illustrating avisual window for loaded media in accordance with an embodiment of thepresent disclosure.

FIG. 6 is a block diagram of a computer system suitable for implementingone or more embodiments of the present disclosure.

FIG. 7 illustrates a flow diagram of a method of navigating loaded mediain accordance with an embodiment of the present disclosure.

FIG. 8 shows a simplified screen shot of a user interface illustrating aposition editing slide tool for (re)positioning loaded media inaccordance with an embodiment of the present disclosure.

FIG. 9 illustrates a flow diagram of a method of editing the position ofloaded media in accordance with an embodiment of the present disclosure.

Embodiments of the present disclosure and their advantages are bestunderstood by referring to the detailed description that follows. Itshould be appreciated that like reference numerals are used to identifylike elements illustrated in one or more of the figures, whereinshowings therein are for purposes of illustrating embodiments of thepresent disclosure and not for purposes of limiting the same. It is alsonoted that figures are not necessarily drawn to scale.

DETAILED DESCRIPTION

Systems and methods disclosed herein, in accordance with one or moreembodiments, facilitate publishing, sharing and/or broadcastingmulti-media presentations over a network for viewing by other users incommunication with the network. In one embodiment, the multi-mediapresentation may be published or distributed to a site accessible viathe network for viewing by one or more other network users incommunication with the network. In another embodiment, the multi-mediapresentation may be directly emailed to one or more recipients (i.e.,other network users). In still another embodiment, an associated URLlink for the multi-media presentation may be given (e.g., via email orsome type of text message) to one or more recipients (i.e., othernetwork users) for direct access to the multi-media presentation. In yetanother embodiment, source code for the multi-media presentation may beembedded in a web page via the network.

In accordance with one or more embodiments of the present disclosure,methods and apparatus are further provided for efficient, flexible, anduser-friendly editing of loaded media in a multi-media presentation overa network, such that a user may be able to view and/or edit thepresentation, for example when sharing and/or broadcasting thepresentation.

FIG. 1 shows one embodiment of a block diagram of a system 100 adaptedto facilitate publishing, sharing and/or broadcasting multi-mediapresentations over a network 160. As shown in FIG. 1, the system 100includes at least one client device 120 (e.g., a network computingdevice), one or more multi-media distribution channels 140 (e.g.,network server devices), and at least one service provider device 180(e.g., a network server) in communication over the network 160.

The network 160, in one embodiment, may be implemented as a singlenetwork or a combination of multiple networks. For example, in variousembodiments, the network 160 may include the Internet and/or one or moreintranets, landline networks, wireless networks, and/or otherappropriate types of communication networks. In another example, thenetwork 160 may comprise a wireless telecommunications network (e.g., acellular phone network) adapted to communicate with other communicationnetworks, such as the Internet. As such, in various embodiments, the atleast one client device 120, the multi-media distribution channels 140,and the at least one service provider device 180 may be associated witha particular link (e.g., a link, such as a URL (Uniform ResourceLocator) to an IP (Internet Protocol) address).

The at least one client device 120, in various embodiments, may beimplemented using any appropriate combination of hardware, firmware,and/or software configured for wired and/or wireless communication overthe network 160. In various implementations, the client device 120 maybe implemented as a personal computing device (e.g., a personal computer(PC)) in communication with the network 160. In various otherimplementations, the client device 120 may be implemented as one or morewireless telephones (e.g., cell phones), personal digital assistants(PDAs), notebook computers, and/or various other generally known typesof wired and/or wireless computing devices. It should be appreciatedthat the client device 120 may be referred to as a user device or acustomer device without departing from the scope of the presentdisclosure.

The client device 120, in one embodiment, includes a user interfaceapplication 122, which may be utilized by a user 102 to conductinformation transactions with the distribution channels 140 and theservice provider device 180 over the network 160. For example, the userinterface application 122 may be implemented as a multi-mediapresentation application to collect, create and publish information viathe network 160. In various implementations, multi-media presentationsmay be published to and/or shared with one or more of the multi-mediachannels 140 via the user interface application 122 over the network160.

In one implementation, the user interface application 122 comprises asoftware program, such as a graphical user interface (GUI), executableby a processor that is configured to interface and communicate with themulti-media channels 140 and the service provider device 180 via thenetwork 160. In another implementation, the user interface application122 comprises a browser module that provides a network interface tobrowse information available over the network 160. For example, the userinterface application 122 may be implemented, in part, as a web browserto view information available over the network 160. In another example,the user 102 is able to access multi-media websites via the one or moremulti-media channels 140 to view, collect and publish multi-mediapresentations over the network 160.

The client device 120, in various embodiments, may include otherapplications as may be desired in one or more implementations to provideadditional features available to the user 102. In one example, suchother applications may include security applications for implementingclient-side security features, programmatic client applications forinterfacing with appropriate application programming interfaces (APIs)over the network 160 or various other types of generally known programsand/or applications. In other examples, these other applications mayinterface with the user interface application 122 for improvedefficiency and convenience. For example, files, data, and/or varioustypes of information may be imported from multi-media software directlyinto the user interface application 122 for ease of access tomulti-media files (e.g., audio, video, pictures, clip-art, etc.).

The client device 120, in various embodiments, may include a useridentifier, which may be implemented, for example, as operating systemregistry entries, cookies associated with the user interface application122, identifiers associated with hardware of the client device 120, orvarious other appropriate identifiers. The user identifier may includeattributes related to the user 102, such as personal information (e.g.,a user name, password, etc.). In one implementation, the user identifiermay be passed to the service provider device 180 during publishingand/or sharing of a multi-media presentation.

The multi-media distribution channels 140, in one embodiment, may bemaintained by one or more resource providers and/or entities (e.g.,social networking sites, resource information sites, management sites,merchant sites, etc.) in communication with the network 160. As such,the multi-media distribution channels 140 may be implemented using anyappropriate combination of hardware and/or software configured for wiredand/or wireless communication over the network 160. In oneimplementation, the multi-media distribution channels 140 may beimplemented as a network computing device (e.g., a network server) inwired and/or wireless communication with the network 160.

The service provider device 180, in one embodiment, may be maintained byan online transaction processing provider and/or entity in communicationwith the network 160. As such, the service provider device 180 may beimplemented using any appropriate combination of hardware, firmware,and/or software configured for wired and/or wireless communication overthe network 160. In one implementation, the service provider device 180may be implemented as a network computing device (e.g., a networkserver) in wired and/or wireless communication with the network 160. Asshown in FIG. 1, the service provider device 180 includes a serviceinterface application 182, which may be adapted to interact with theclient device 120 to facilitate publishing and/or sharing multi-mediapresentations over a network.

The service interface application 182, in one embodiment, utilizes acollect module 184, a create module 186, and a publish module 188 tocollect information, create presentations, and publish presentations,respectively. As described in greater detail herein, the modules 184,186, 188 enable users, such as the user 102, to collect diverse types ofaudio and visual media, create rich multi-media presentations withreal-time editing and authoring using media software, such as Flash, andthen share and/or publish the rich multi-media presentations with otherusers via the network 160. In one example, the collect, create, andpublish modules 184, 186, 188 may be implemented within a standard webbrowser for interfacing with the user 102.

In one implementation, the user 102 is able to share multi-mediapresentations with other users via the media channels 140 and/or embedmulti-media presentations directly in webpages of other users. Forexample, the user 102 may provide a unique URL link for the multi-mediapresentation to other users. In another example, the user 102 maydirectly email multi-media presentations to multiple recipients andinclude a message with the email. In still another example, the user 102may provide the source HTML (i.e., HyperText Markup Language) code toother users and/or embed the source HTML code directly into other user'swebpages. Still other examples include the ability to publishmulti-media presentations on a website to sell a particular item orservice for purchase. For items and/or services, a media richpresentation helps users market and sell items and/or services, whichmay be valuable for high-end or high-priced items and/or services.Social and/or dating sites may utilize these multi-media presentationsto provide online users with a way to better present themselves to otheronline users. In various implementations, some types of webpages may bepresented in a more dynamic manner by utilizing Rich Site Summary (RSS)feeds, since, for example, a particular user's presentation may becontinually changed with new media.

The service provider device 180, in various embodiments, may beconfigured to maintain, store and/or archive multi-media presentationsin a database 190, each of which may include information related to oneor more users, such as the user 102, and one or more multi-mediachannels, such as multi-media distributions channels 140. In variousexamples, the multi-media presentations may include attributes stored aspart thereof, and the attributes may be passed to the service providerdevice 180 as part of a creating, publishing and/or sharing of themulti-media presentations.

The collect module 184, in one embodiment, enables the user 102 tocollect media objects, such as audio, photographic images, video, andmusic media from various sources, such as a PC, RSS feeds, websites, andany other online source, via a user interface, such as the userinterface application 122. In various implementations, the userinterface application 122 comprises multiple tabs and/or links for thevarious sources. Once collected, the media may be saved and categorizedin the database 190 and edited on the system site via the serviceprovider device 180. Editing may include one or more of sizing,rotating, overlying, moving and stacking various media objects backwardand forward with an overlay or stack. In one example, video may bebroken up automatically by the service provider device 180 into smallersegments, and selected video segments may be combined and/or used asdesired. Selected media may be placed on a virtual storyboard, such as aclipboard, on the same screen as the collection of media. Media may beedited either in the collection or in the storyboard in one example.Placing desired media on the storyboard may be accomplished by draggingand dropping in another example Thus, the collect module 184 providesselected media on a storyboard. In another example, the collect module184 provides media on a user's media page (i.e., not placed on thestoryboard). In still another example, uploading media may be delayeduntil editing is completed.

The create module 186, in one embodiment, enables the user 102 to placeselected media onto a presentation style, board or collage. The serviceprovider device 180 may automatically suggest a story idea to launch thecreative process, or the user 102 may select a specific style orpresentation tool. In one implementation, media from the storyboard maybe dragged and dropped onto the presentation. Within the presentation,there may be multiple styles, such as a picture frame, a television, abillboard, etc. Media may be placed within the viewing window of eachtype of style. Once in the presentation, the media may be edited. Forexample, the media may be rotated, sized, cut-out (e.g., by selectingthe boundaries of an image, such as with clicks to designate pointsalong the boundary, enabling as coarse or fine a resolution as desired),moved forward or backward in relation to adjacent media, slid to add orremove spaces within the presentation, and edited to add a hotspot(e.g., selecting an area of the image for additional information, suchas adding a link, video, text, etc.). Other editing features may includeadding audio to the background, adding text, and/or distorting images.In one aspect, the editing may be achieved in real-time so that the user102 may quickly and easily see the results and change them as needed.

The publish module 188, in one embodiment, enables the user 102 toshare, publish and/or distribute the presentation when, for example, thepresentation is completed. In one implementation, as described herein,the presentation may be saved in the database 190 of the serviceprovider device 180. Once saved, the user 102 may share, publish and/ordistribute presentations to any selected channel, such as one or more ofthe multi-media channels 140. Any users on the network 160 having accessto the channels 140 or website related to the channels 140 may refreshthe view, which may automatically load the presentation into thatchannel and/or website for viewing the content of the presentation. Assuch, the presentations may be distributed to various online websites,blogs, mobile video players, and IP TV networks, and/or on the systemsite.

These modules 184, 186, 188 may be combined, used, and/or modified toprovide the user 102 with different initial choices regarding the typeof presentation and features desired for creating the presentation. Thechoices may be a simple, easy-to-use tool to quickly build presentationswith dynamic content from RSS feeds and online albums. Accordingly, theuser 102 may select a presentation style and then link it to the user'smedia libraries through RSS feeds that maintain an “always on” permalinkto the content source.

FIGS. 2A-2B show one embodiment of a block diagram of a method 200adapted to facilitate creating, publishing and/or sharing multi-mediapresentations over the network 160, in reference to FIG. 1. It should beappreciated that the order of the following process flow may berearranged without departing from the scope of the present disclosure.

Referring to FIG. 2A, the method 200 comprises collecting media for amulti-media presentation (block 210). In various implementations, mediasuch as photographic images, audio, video, music, etc. may be collectedfrom a variety of sources including local sources, such as a personalcomputer (PC), and online sources, such as the Internet, for use in themedia presentation or media piece. For example, an online search enginemay be accessed and one or more keyword searches may be utilized tosearch the Internet for various types of media content. In anotherexample, additional media may be collected from other sources, such asmedia from a PC, which may be selected, uploaded and viewed. As such,media from different sources may be viewed by selecting correspondingmedia source tabs from the user interface application 122. Media may beviewed as individual media items or clustered (or grouped) such thateach of the individual media items within the cluster (or group) may beviewed. In one aspect, the user interface application 122 interfaceswith the service interface application 182 via the network 160 toutilize the collect module 186 for collecting media. In another aspect,any media collected may be displayed on the client device 120 via thenetwork 160 for viewing by the user 102 in a media collection area ofthe user interface application 122 (block 214).

Next, the method 200 comprises populating a storyboard (block 218). Inone implementation, the user interface application 122 includes agraphical storyboard, which may be populated with collected media fromone or more of the media items or a cluster of media items collectedfrom various media sources. For example, the graphical storyboard mayinclude one or more images of items and/or clustered items collectedfrom the Internet and items uploaded from a PC. In one example, mediaobjects or items may automatically populate the storyboard. Furtherdisclosure of automatic media population may be found in U.S.application Ser. No. 12/347,749, which has been previously incorporatedby reference herein for all purposes

Optionally, one or more of the media objects/items may be edited (block222). In various implementations, media positioned on the graphicalstoryboard may be edited prior to generating the media presentation ormedia piece, and/or individual media items in a media cluster may bereordered.

Next, the media presentation or media piece may be created (block 226).In one implementation, once media objects have been collected andoptionally edited, the media presentation or media piece may be createdby selecting a creation operation of the user interface application 122.In one aspect, the user interface application 122 interfaces with theservice interface application 182 via the network 160 to utilize thecreate module 186 for creating the media presentation or media piece.

In various implementations, creating the media presentation or mediapiece may include selecting and/or customizing its style (block 230) andviewing the selected and/or customized style (block 234). For example,presentation styles may include, but are not limited to, a pictureframe, a billboard, kaleidoscope, a street scene, landscape, etc. Once astyle is selected, media items from the storyboard may automaticallyflow into or populate the selected style. Some styles, such askaleidoscope style, support movement of media as part of a presentationstyle and provides various customizable characteristics of movement,such as speed of media rotation, etc., within the style. In one aspect,the customized style may be displayed on the client device 120 via thenetwork 160 for viewing by the user 102.

Next, referring to FIG. 2B, the selected and/or customized style of themedia presentation or media piece may be optionally edited (block 238).In various implementations, if further editing of media presentationstyle is desired, style editing tools may be provided to the userinterface application 122 via the create module 186. These editing toolsmay include the ability to preview the media presentation or mediapiece, edit the media presentation or media piece (e.g., scale, rotateand/or move frames directly onto the media presentation or media piece),add text and/or captions to the media presentation or media piece, addaudio, sound, music and/or voice-over to the media presentation or mediapiece, place a frame and/or mask on the media presentation or piece, andadd background images and/or color to the media presentation or mediapiece. For example, a sound feature may provide options, such as addingmusic to particular media of background, having the music vary inloudness depending on time and/or spatial indicators, and having arepeating playlist that repeats particular music and/or plays differentsegments in a random manner.

Next, the method 200 comprises providing identifying information (block242) about the media presentation or media piece (e.g., a title, astorage location and/or various types of descriptive information) anddeciding where to store the media presentation or media piece (block246). In one implementation, the user 102 may identify and/or select oneor more distribution channels located on an associated server forstorage of the media presentation or media piece or choose analternative storage location in the network 160.

Next, the method 200 comprises publishing, sharing and/or broadcastingthe media presentation or media piece via the network (block 250). Invarious implementations, the media presentation or media piece may bepublished or distributed to a site accessible via the network 160 forviewing by one or more other network users in communication with thenetwork 160. For example, the media presentation or media piece may bedirectly emailed (block 254 a) to one or more recipients (i.e., othernetwork users), along with a message. In another example, an associatedURL link (block 254 b) for the media presentation or media piece may begiven (e.g., via email or some type of text message) to one or morerecipients (i.e., other network users) for direct access to the mediapresentation or media piece via the network 160. In still anotherexample, source code (block 254 c) for the media presentation or mediapiece may be obtained by the user 102 and embedded into a web pagemanaged by the user 102 via the network 160.

Accordingly, in various implementations, the user 102 may email themedia presentation or media piece to other network users via the network160, embed the media presentation or media piece in a web page that isaccessible via the network 160, and/or create a URL permalink of themedia presentation or media piece to one or more of the multi-mediadistribution channels 140 in the network 160.

In one implementation, the user interface application 122 and serviceinterface application 182 allow users to compose multi-media stories andpresentations by laying out media objects, such as photographic images,video, text and audio, on a medium, such as a stage or storyboard, whichis displayable within a visual window. In one aspect, a multi-mediastory may begin from an unpopulated storyboard. The user 102 may selectto view and work with a sample story until the user 102 is ready tobegin the media story. Multi-media items from various sources may beviewed by selecting source tabs of the user interface application 122.

Once the user 102 is ready to create a media story, the user 102accesses a collage storyboard. In one aspect, the storyboard or stageprogressively moves in a first direction, such as a left or right(horizontal) direction, and when viewed, may appear as a movie adaptedto present a linear narrative in time and/or space. In another aspect,the stage may progressively move in a second direction, such as anupward or downward (vertical) direction. Again, this type of movementmay present a natural mapping to time, space, and/or narrative. In oneexample, the vertical orientation may represent physical structures thathave height and/or depth, such as buildings, structures, monumentsand/or geological strata. In still another aspect, the stage may beadapted to progressively move in a plurality of directions and may bepresented as real or virtual spaces in two or three dimensions.Furthermore, the storyboard or stage may progressively move at differentspeeds based upon user input, for example via the turning speed of amouse wheel, cursor movement along a slide tool, or cursor movement to aboundary of the visual window, as further described below. Thus, thepresent disclosure provides for multi-dimensional and variable speednavigation of the multi-media items presented on the collage storyboard.

In various implementations, multi-media items from various sources maybe uploaded from the network 160, or previously collected media itemsmay be used to populate the storyboard by selecting desired multi-mediaitems. A multi-media item may be repositioned within the storyboard byselecting, dragging, and dropping the multi-media item to anotherlocation in the storyboard. Similarly, a multi-media item may be removedfrom the storyboard by dragging and dropping the multi-media item fromthe storyboard. In one aspect, once multi-media items are positionedwithin the storyboard, the media story may be edited. In this regard, arich interface may be presented to users within a predefined screen areaor visual window.

In various embodiments, the service interface application 182 utilizes anumber of innovative techniques to deal with the limited space of thescreen area or visual window. For example, a first technique utilizesone or more direct-attached media-specific tools. When selecting anymedia object on the stage, a highlight rectangle appears around theobject. Attached to the rectangle around the media object are a numberof tools, some generic for all media types, others specific to the mediatype. By showing the tools in close proximity to the media object, it iseasier for users to understand the relationship of the tool to the mediaobject. For each tool, an edge may be specified (e.g., expressed as anumber from 0-3, 0=top, 1=right, 2=bottom and 3=left), a position alongthe edge (e.g., expressed as a ratio of edge length) and an offset fromthe edge (e.g., expressed as a factor of the tool's size). Wheneverupdating a position of a tool, an absolute position may be calculated orrecalculated based on various parameters.

In another example, an embodiment utilizes a rotation invariant displayof tools. If a user 102 rotates a media object using a rotate tool, theassociated tools remain fixed to the original object constraint point(i.e., they do not rotate, thereby making it easier for the user to readthe icons). Once a rotation is complete, the attached edge is calculatedor recalculated based on the perceived edge, and if necessary fades thetool out from a previous location to a new location. As such, the user102 may be accustomed to finding certain tools in certain positionsrelative to a media object, irrespective of the media object's rotation.

In another example, an embodiment utilizes a position editing slide toolas further described below with respect to FIGS. 8 and 9. When workingwith media that may progressively move in a particular direction, userselection and manipulation of individual media objects may become achallenge. Traditional techniques of multiple selection and directmanipulation may break down when dealing with large numbers of mediaobjects or large documents. The position editing slide tool allows theuser 102 to perform an action that may be difficult, such as insert orremove horizontal space within a collage or story. The user 102 selectsa first media object to reveal the media specific tools. The positionediting slide tool is affixed to an edge of the media object, and whengrabbed, the slide tool selects and/or groups one or more media objectsat or adjacent to the other edge of the selected media object, andallows side-to-side sliding of the grouped media objects during a useraction. In one aspect, this technique may be utilized for a verticallyoriented collage or story, which would present the position editingslide tool on an upper edge of the selected media object and allowdragging of layers at or below the selected object.

In another example, an embodiment utilizes a drag and drop insertion.The user 102 may drag thumbnails representing media objects from a mediatab and drop them onto the stage or storyboard. As the user 102 dragsthe thumbnail over the stage or storyboard, an insertion point indicatoris presented to the user 102 showing where an edge of the dropped itemmay be located during user action, such as, if the user's mouse isreleased. If the user's mouse hovers over the left edge of an existingmedia object on the stage, the indicator state switches to an insertmode. If the user releases the mouse while the indicator is in thismode, the underlying media object and all media objects to the right ofthe left edge of that media object will be offset to the right to allowfor the dropped media object to fit on the stage without being obscured.

In another example, an embodiment utilizes one or more unconstrainedanimated button icons. Some applications use iconic images to representactions that the user 102 may perform. As icons become smaller, they aredifficult to discern and understand. The service interface application182 uses animation and unbounded icons to convey visual information inone embodiment. In one aspect, a text tool icon in an idle state is an“A” (other applications often use a T as the text tool). On rollover,the A is revealed to be a window onto a cropped, sliding Add Textmessage, which animates to an edge. In another aspect, a soundtrack toolmay be represented as a musical note, but on rollover, the notes playand rise outside of a representative button. To create these buttons, adesigner may designate a static rectangle, which represents traditionalbounds of the graphic. These bounds may be used by the button todetermine the button bounds and scale. Graphic icon content is notrestricted to lie within these bounds and the button class is set to notclip its content. By triggering the animation on rollover, the designmay exceed its bounds, while still preserving visual coherence in theidle state.

In another example, an embodiment utilizes one or more collapsibletabbed containers. When editing a collage or story, a button bar mayrepresent one or more additional editing options. The collapsed bar maycomprise a row of buttons, although each icon may be presented as abutton rather than an icon. When the user 102 selects at least one ofthe buttons, the selected button transforms into a tab, and the barexpands horizontally to include the tab content. The user 102 maycollapse the bar by selecting a close button in the bar or by selectingthe currently open tab.

In another example, the user 102 may add one or more hotspots to themedia presentation or piece. A hotspot may be identified by a title as acursor is moved over a designated hotspot area. Activating the hotspotby selecting the hotspot area may link the user 102 to additionalinformation relating to the hotspot item. For example, if an automobileis used as a media item within the collage storyboard, a hotspot maylink the user 102 to additional information relating to the automobile,such as price, condition, and terms or sale. Hotspots may be specific toone part or element of the media item. In this example, the user 102 maycreate a hotspot on the tire, which, when opened, may give the vieweraccess and/or information on the tire, where to buy the tire, etc. Otherhotspots may link the user to music or other audio clips, and othermedia may be uploaded into the collage storyboard from a clipboard orlink to sale items posted on the Internet. Once the media piece has beencreated the media piece may be viewed, saved, previewed and/orpublished. Once published, the user 102 may have options as to theplayback. For example, the media presentation or piece may playcontinuously until stopped, play only for a specified number of times,play only once, etc. Further disclosure of hotspots may be found in U.S.application Ser. No. 12/347,638, which has been previously incorporatedby reference herein for all purposes.

In another example, an embodiment utilizes innovative methods andapparatus for on-demand loading of media as further described below withrespect to FIGS. 3-5B. Once a media presentation has been created andsaved, the presentation can be edited or viewed, which requires loadingof the media to a user interface application, such as a media player. Amedia presentation may be represented as a collage document with aplurality of layers. Each layer may include various layer-specificattributes, including but not limited to a position in the collagedocument, scale, visual bounds, associated annotations (i.e., hotspots),and an associated media object or a target media asset, which may havefurther layer-specific properties, such as playback behaviors. When aclient device (e.g., client device 120) or a user interface application(e.g., a user interface application 122, a media player, etc.) loads amedia presentation (e.g., a collage document or story), the userinterface application first specifies a maximum number of layers perpage of the desired collage document and requests the first page of thecollage document. The request is made to the source of the collagedocument, and in one example can be made to a service provider device ora distribution channel server via a network, a website, or within a userdevice itself if the collage document has been saved to the user device.In the case of the service provider device 180 (e.g., a server) beingthe source of the collage document, the service provider device 180returns up to a page worth of layers, sorted by position in the collage(e.g., a horizontal, or a vertical location). The user interfaceapplication may load one or more pages of layers from the presentationsource and create a list of layers indexed by at least a position withinthe collage document. Then, the user interface application filters thelayers down to the currently visible within the visual window of theuser interface application. For each layer, if the layer hasn't alreadybeen loaded or queued for loading, the layer is queued for loading.

Referring now to FIG. 3, a flow diagram of a method 300 for loadingmedia via a client device is illustrated in accordance with anembodiment of the present disclosure. As noted above, a collage documentincludes at least one page having a plurality of layers. Each layer isassociated with a media object, and may further include layer-specificattributes, such as a position in the collage document, scale, visualbounds, and an associated annotation. As noted above, the collagedocument may flow in a linear two-dimensional fashion or may flow invarious directions. Thus, a layer-specific attribute of the position inthe collage document can include one of a horizontal position, avertical position, a position along a line, a position in an area, andcombinations thereof. The collage document may further comprise identityinformation including at least one of a title, a storage location, and adescription, thus allowing for requests of particular collage documents.

At step 302, a client device provides a maximum number of layers perpage of a collage document, and loads a first page of the collagedocument to the client device at step 304. Specifying the maximum numberof layers per page thus allows for control over bandwidth and/orprocessing requirements if the page of layers is being downloaded over anetwork or when loading the collage document from within the clientdevice. The maximum number of layers per page may be provided manuallyby a user through a user interface or automatically by the clientdevice, such as via a client device processor. In other embodiments, theuser or the client device can specify (manually or automatically) amaximum number of layers within a pre-determined or initial visualwindow of the user interface per page of the collage document (“thevisual window of layers per page”) in combination with a specificationof the maximum number of layers per page or alone to further control forbandwidth and/or processing requirements when loading a collagedocument.

After loading the page of layers, the client device creates a list oflayers of the loaded page at step 306, with each layer indexed by atleast a position in the collage document. At step 308, the list oflayers is filtered based on at least the position in the collagedocument and the visual window of the user interface to thereby displayvisible layers of the loaded page within the visual window.

At step 310, the client device determines if there is more than one pageworth of layers in the collage document. If yes, the client device loadsanother page of the collage document as noted by the process loop backto step 304. If no, the client device finishes the loading process ofthe collage document.

As noted above, method 300 is applicable when loading a collage documentto the client device from various sources, including a server device ora website via a network, and within the client device itself when acollage document is stored within a client device memory.

Referring now to FIG. 4, a flow diagram is illustrated of a method 400for loading media from a server device in accordance with an embodimentof the present disclosure. The server device can store a collagedocument in a database or have access to a database storing the collagedocument remotely from the server device in one embodiment.

At step 402, the server device receives a request for a collagedocument, the collage document including at least one page having aplurality of layers, with each layer being associated with a mediaobject as noted above. Other attributes of a collage document notedabove apply in this process as well and will not further described. Atstep 404, the server device receives a maximum number of layers per pageof the collage document (from a client device), and as noted above, inother embodiments, may receive a visual window of layers per page aloneor in conjunction with the maximum number of layers per page. At step406, the server device returns a page of the requested collage document.Although the client device may create a list of layers of a loaded pageas noted above, the server device may create a list of layers of thereturned page in one embodiment, with each layer indexed by at least aposition in the collage document, as at step 408. At step 410, theserver device determines if there is more than one page worth of layersin the collage document. If yes, the server device returns another pageof the collage document as noted by the process loop back to step 406.If no, the server device finishes the returning process of the collagedocument.

FIGS. 5A and 5B are screen shots of a user interface 500 of a clientdevice for creating and/or editing loaded media in accordance with anembodiment of the present disclosure. User interface 500 includes avisual window 502 for viewing a storyboard or a stage, a media storagearea 504, and slide tools 508 a, 508 b. Media objects 506 a and 506 bare placed within the storyboard and may be considered individual layersof a page of a collage document. A list of layers including mediaobjects 506 a and 506 b is filtered based on at least the position inthe collage document (determined by the layer collage position and slidetool) and the visual window of the user interface to thereby displayvisible layers of the loaded page within the visual window. As slidetool 508 a is moved horizontally toward media object 506 a and away frommedia object 506 b, media object 506 a is fully displayed, as shown inFIG. 5B. Slide tool 508 b allows for navigation of media objects in avertical direction. In other embodiments, it is possible that thestoryboard or stage may be “grabbed” by the user via a user interface,such as a mouse, and the storyboard or stage navigated in any desireddirection.

Referring now to FIG. 7, a flow diagram of a method 700 for navigatingloaded media via a client device is illustrated in accordance with anembodiment of the present disclosure. As noted above, a collage documentincludes at least one page having a plurality of layers. Each layer isassociated with a media object, and may further include layer-specificattributes, such as a position in the collage document, scale, visualbounds, and an associated annotation.

At step 702, a page of layers is loaded onto a client device in asimilar manner as described above with respect to FIGS. 3 and 4. Theclient device creates a list of layers of the loaded page at step 704,with each layer indexed by at least a position in the collage document.At step 706, the multi-media objects of the collage document arenavigated by user input via a user interface, such as a mouse, display,and/or slide tool (e.g., slide tools 508 a, 508 b). The multi-mediaobjects may flow in a linear two-dimensional fashion or may flow invarious directions and the present disclosure allows formulti-directional and variable speed navigation of the multi-mediautilizing the layer-specific attributes of the media object, such asposition in the collage document which can include one of a horizontalposition, a vertical position, a position along a line, a position in anarea, and combinations thereof. At step 708, the list of layers isfiltered based on at least the position in the collage document and thevisual window of the user interface to thereby display visible layers ofthe loaded page within the visual window. At step 710, the client devicedetermines if further navigation of the collage document is detected andif yes, the client device loops back to step 708 to filter the layersbased on the position in the collage document and the visual window ofthe user interface. It is noted that if there is more than one pageworth of layers in the collage document, the client device loads anotherpage of the collage document.

As noted above, method 700 is applicable when navigating a loadedcollage document from various sources, including a server device or awebsite via a network, and within the client device itself when acollage document is stored within a client device memory.

Furthermore, as noted above, the storyboard or stage may progressivelymove at different speeds based upon user input, for example via theturning speed of a mouse wheel, cursor movement along a slide tool(e.g., slide tools 508 a, 508 b), or cursor movement toward a boundaryof the visual window 502 (e.g., faster movement in the direction ofcursor movement as the cursor is moved closer to a visual windowboundary or edge). Thus, the present disclosure provides formulti-dimensional and variable speed navigation of the multi-media itemspresented on the collage storyboard.

Referring now to FIGS. 8 and 9, a position editing slide tool and methodof use are illustrated and described. FIG. 8 is a simplified screen shotof a user interface 800 (e.g., including a storyboard or stage) havingmedia objects 1, 2, n, n+1, and n+2 laid out in a horizontal directionwithin a visual window 502. In one example, slide tools 508 a, 508 b, orcursor movement within the visual window 502 may be used forhorizontally navigating between the media objects in this embodiment. Asmentioned above, in other embodiments, media objects may be laid out ina vertical direction or multiple directions and navigation capabilitiesmay include corresponding vertical or multi-directional movement.

In one example, a position editing slide tool 802 appears at an edge ofa media object when selected (in this case highlighted media object(n+1)). Other media editing specific tools may also be revealed.Position editing slide tool 802 allows the user 102 to perform an actionthat may be difficult, such as insert or remove horizontal space withina collage or story. When grabbed, the position editing slide toolselects and/or groups one or more media objects at or adjacent to theother edge of the selected media object (in this case, the slide toolselects all media objects at or to the right of selected media object(n+1)) and allows side-to-side sliding of the grouped media objects toany horizontal position along the storyboard during a user action. Inone embodiment, space on the storyboard between media objects areincluded in the selected and/or grouped media objects which arerepositioned. In other words, the entire “slice” or “section” ofstoryboard including and to the right of selected media object (n+1) maybe repositioned via a “sliding” action to any other horizontal positionon the storyboard. The repositioned media objects may overlap othermedia objects, be placed behind other media objects, or be positionedbetween other media objects. Space along the storyboard may also thus becreated between media objects using the position editing slide tool tomove an entire section of the storyboard. The layer-specific attributesassociated with the repositioned media object(s) will be changed inaccordance with the new position(s) in the collage document and thechanged layer-specific attributes may be sent back to the server when/ifthe edited collage document is saved or at a time interval. In anotheraspect, this technique may be utilized for a vertically oriented collageor story, which would present the position editing slide tool on anupper edge of the selected media object and allow selecting/grouping oflayers at or below the selected object, and then dragging and dropping(repositioning) of the selected/grouped layers along a differentvertical position of the storyboard.

Referring now to FIG. 9, a flow diagram is illustrated of a method ofediting the position of loaded media using a position editing slide toolin accordance with an embodiment of the present disclosure. As notedabove, a collage document includes at least one page having a pluralityof layers. Each layer is associated with a media object, and may furtherinclude layer-specific attributes, such as a position in the collagedocument, scale, visual bounds, and an associated annotation. At step902, a page of layers is loaded onto a client device in a similar manneras described above with respect to FIGS. 3 and 4. The client devicecreates a list of layers of the loaded page at step 904, with each layerindexed by at least a position in the collage document. At step 906, afirst media object is selected to reveal the position editing tool. Atstep 908, the position editing tool is selected to thereby select and/orgroup the first media object and media objects adjacent to the firstmedia object in a certain direction (e.g., all media objects to theright or below the selected first media object). At step 910, theselected/grouped media objects are moved by the user to another positionin the collage document (e.g., along another horizontal or verticalposition of the storyboard). Space between selected/grouped mediaobjects may also be repositioned. To reposition the media objectsselected by the position editing tool, the collage document may benavigated by user input via a user interface, such as a mouse, display,and/or slide tool (e.g., slide tools 508 a, 508 b) as mentioned above.At step 912, the client device determines if another media object isselected and if yes, the client device loops back to step 906.

In various implementations, using the various media creation andpublishing tools described herein, a user 102 may quickly and easilycreate media rich presentations and use (e.g., display, share, edit . .. etc.) those presentations in numerous ways. Some examples include theability to publish a presentation on a site to sell a particular item orservice. For items or services, a media rich presentation may assist theseller with marketing and selling the item or service, which may bevaluable for high-end or high-priced items or services. Sellers may beable to cross sell or promote items or services or direct consumers topartner commercial sites using the hotspot feature. Social or datingsites may use these presentations to give its users a meaningful way topresent themselves to others. Blogs and personal pages may be moredynamic using RSS feeds, since, for example, a particular user'spresentation may be continually changing with new media.

Referring now to FIG. 6, a block diagram is illustrated of a computersystem 600 suitable for implementing one or more embodiments of thepresent disclosure, including the client device 120, the one or moredistribution channels 140, and the service provider device 180 (e.g., aserver). In various implementations, the client device 140 may comprisea personal computing device capable of communicating with the network160, such as a personal computer, laptop, cell phone, PDA, etc., the oneor more distribution channels 140 (e.g., merchant devices) may comprisea network computing device, such as a network server, and the serviceprovider device 180 may comprise a network computing device, such as anetwork server. Hence, it should be appreciated that each of the devices120, 140, 180 may be implemented at least in part by computer system 600in a manner as follows.

In accordance with various embodiments of the present disclosure,computer system 600, such as a personal computer and/or a networkserver, includes a bus 602 or other communication mechanism forcommunicating information, which interconnects subsystems andcomponents, such as processing component 604 (e.g., processor,micro-controller, digital signal processor (DSP), etc.), system memorycomponent 606 (e.g., RAM), static storage component 608 (e.g., ROM),disk drive component 610 (e.g., magnetic or optical), network interfacecomponent 612 (e.g., modem or Ethernet card), display component 614(e.g., CRT or LCD), input component 616 (e.g., keyboard), and cursorcontrol component 618 (e.g., mouse or trackball). In one implementation,disk drive component 610 may comprise a database having one or more diskdrive components.

In accordance with embodiments of the present disclosure, computersystem 600 performs specific operations by processor 604 executing oneor more sequences of one or more instructions contained in system memorycomponent 606. Such instructions may be read into system memorycomponent 606 from another computer readable medium, such as staticstorage component 608 or disk drive component 610. In other embodiments,hard-wired circuitry may be used in place of or in combination withsoftware instructions to implement the present disclosure.

Logic may be encoded in a computer readable medium, which may refer toany medium that participates in providing instructions to processor 604for execution. Such a medium may take many forms, including but notlimited to, non-volatile media, volatile media, and transmission media.In various implementations, non-volatile media includes optical ormagnetic disks, such as disk drive component 610, volatile mediaincludes dynamic memory, such as system memory component 606, andtransmission media includes coaxial cables, copper wire, and fiberoptics, including wires that comprise bus 602. In one example,transmission media may take the form of acoustic or light waves, such asthose generated during radio wave and infrared data communications.

Some common forms of computer readable media includes, for example,floppy disk, flexible disk, hard disk, magnetic tape, any other magneticmedium, CD-ROM, any other optical medium, punch cards, paper tape, anyother physical medium with patterns of holes, RAM, PROM, EPROM,FLASH-EPROM, any other memory chip or cartridge, carrier wave, or anyother medium from which a computer is adapted to read.

In various embodiments of the present disclosure, execution ofinstruction sequences to practice embodiments of the present disclosuremay be performed by computer system 600. In various other embodiments ofthe present disclosure, a plurality of computer systems 600 coupled bycommunication link 620 (e.g., network 160 of FIG. 1, such as a LAN,WLAN, PTSN, and/or various other wired or wireless networks, includingtelecommunications, mobile, and cellular phone networks) may performinstruction sequences to practice the present disclosure in coordinationwith one another.

Computer system 600 may transmit and receive messages, data, informationand instructions, including one or more programs (i.e., applicationcode) through communication link 620 and communication interface 612.Received program code may be executed by processor 604 as receivedand/or stored in disk drive component 610 or some other non-volatilestorage component for execution.

In one embodiment, a client device for loading media comprises a networkinterface configured to allow communication between the client deviceand a server device over a network, and a processor configured toprovide a maximum number of layers per page of the collage document. Theprocessor is further configured to load a first page of the collagedocument, create a list of layers of the loaded page, each layer indexedby at least a position in the collage document, and filter the list oflayers based on at least the position in the collage document and avisual window of the user interface to thereby display visible layers ofthe loaded page within the visual window.

In another embodiment, a server device for loading media comprises adatabase for storing a collage document, and a network interfaceconfigured to allow communication between a client device and the serverdevice over a network. The server device further includes a processorconfigured to: receive a request from the client device for the collagedocument for download, receive a maximum number of layers per page ofthe collage document, and return a page of the requested collagedocument.

Where applicable, various embodiments provided by the present disclosuremay be implemented using hardware, software, or combinations of hardwareand software. Also, where applicable, the various hardware componentsand/or software components set forth herein may be combined intocomposite components comprising software, hardware, and/or both withoutdeparting from the spirit of the present disclosure. Where applicable,the various hardware components and/or software components set forthherein may be separated into sub-components comprising software,hardware, or both without departing from the scope of the presentdisclosure. In addition, where applicable, it is contemplated thatsoftware components may be implemented as hardware components andvice-versa.

Software, in accordance with the present disclosure, such as programcode and/or data, may be stored on one or more computer readablemediums. It is also contemplated that software identified herein may beimplemented using one or more general purpose or specific purposecomputers and/or computer systems, networked and/or otherwise. Whereapplicable, the ordering of various steps described herein may bechanged, combined into composite steps, and/or separated into sub-stepsto provide features described herein.

The foregoing disclosure is not intended to limit the present disclosureto the precise forms or particular fields of use disclosed. As such, itis contemplated that various alternate embodiments and/or modificationsto the present disclosure, whether explicitly described or impliedherein, are possible in light of the disclosure. Having thus describedembodiments of the present disclosure, persons of ordinary skill in theart will recognize that changes may be made in form and detail withoutdeparting from the scope of the present disclosure. Thus, the presentdisclosure is limited only by the claims.

What is claimed is:
 1. A system comprising: a collect module of anonline transaction processing provider that collects a plurality ofmedia objects available on a network; a create module of the onlinetransaction processing provider that receives, via a service interfaceapplication available over the network, a selection of a first mediaobject of the plurality of media objects from a client device of a user,receives a selection to group the first media object and at least oneother media object adjacent to both the first media object and aposition editing tool on a border of the first media object, wherein thefirst media object and the at least one other media object include firstpresentation attributes within the document, moves the first mediaobject and the at least one other media object to a different positionin the document based on user input comprising moving the positionediting tool to the different position, determines second presentationattributes for the first media object and the at least one other mediaobject based on the different position in the document and the firstpresentation attributes, and creates a media presentation from thedocument using at least the second presentation attributes; and adatabase of the online transaction processing provider that stores theplurality of media objects and the media presentation for use by apublishing module of the online transaction processing provider.
 2. Thesystem of claim 1, wherein the first media object and the at least oneother media object are repositioned along one of a horizontal direction,a vertical direction, and a combination of multiple directions.
 3. Thesystem of claim 1, wherein selecting the position editing tool on theclient device groups the first media object and all media objects to theright, left, top, or bottom of the first media object as the at leastone other media object when selecting the position editing tool.
 4. Thesystem of claim 1, wherein the position editing tool includes ahighlight bracket for the first media object and the at least one othermedia object.
 5. The system of claim 1, wherein selecting the positionediting tool groups the first media object, the at least one other mediaobject, and any space between the first media object and the at leastone other media object.
 6. The system of claim 1, wherein the collagedocument is navigable in a plurality of directions, including one of ahorizontal direction, a vertical direction, and a combination thereof,based on user input via a user interface.
 7. The system of claim 1,wherein the collage document is navigable at a variable speed based oninput via the user interface to the client device.
 8. The system ofclaim 1, wherein each of the position attributes are associated with ascale, a visual bound, and an associated annotation within the document.9. The system of claim 1, further comprising a publish module thatdownloads the media presentation to the client device via the network.10. The system of claim 1, wherein a second media object is disposed ofnext to the first media object and not included with the at least oneother media object when selecting the position editing tool.
 11. Amethod comprising: receiving, by an online transaction processingprovider, a selection of a first media object of a plurality of mediaobjects from a client device of a user; receiving, by the onlinetransaction processing provider, a selection to group the first mediaobject and at least one other media object adjacent to both the firstmedia object and a position editing tool on a border of the first mediaobject, wherein the first media object and the at least one other mediaobject include first presentation attributes within the document;moving, by the online transaction processing provider, the first mediaobject and the at least one other media object to a different positionin the document based on user input comprising moving the positionediting tool to the different position; determining, by the onlinetransaction processing provider, second presentation attributes for thefirst media object and the at least one other media object based on thedifferent position in the document and the first presentationattributes; creating, by the online transaction processing provider, amedia presentation from the document using at least the secondpresentation attributes; and storing the media presentation to adatabase of the online transaction processing provider, wherein thedatabase further comprises the plurality of media objects.
 12. Theclient device of claim 11, wherein the grouped first media object andthe at least one other media object are repositioned along one of ahorizontal direction, a vertical direction, and a combination of ahorizontal direction and a vertical direction in the document.
 13. Theclient device of claim 11, wherein selecting the position editing toolon the client device groups the first media object and all media objectsto the right, left, top, or bottom of the first media object as the atleast one other media object when selecting the position editing tool.14. The client device of claim 11, wherein the position editing toolincludes a highlight bracket for the first media object and the at leastone other media object.
 15. The client device of claim 11, wherein thecollage document is navigable at a variable speed based on input via theuser interface to the client device.
 16. The client device of claim 11,wherein the collage document is navigable in a plurality of directionson the client device.
 17. The client device of claim 11, wherein theposition editing tool includes a displayable icon on the border.
 18. Theclient device of claim 11, wherein selecting the position editing toolgroups the first media object, the at least one other media object, andany space between the first media object and the at least one othermedia object.
 19. The client device of claim 11, wherein a second mediaobject is disposed of next to the first media object and not includedwith the at least one other media object when selecting the positionediting tool.
 20. A system comprising: an online transaction processingprovider comprising a server device having a collect module, a createmodule, and a publish module available using a service interfaceapplication over a network and configured to: receive, from a clientdevice of a user, a selection of a media object from a plurality ofmedia objects collected by the collect module; receive, from the clientdevice using a position editing tool displayed on a border of the mediaobject, input to group the media object and at least one other mediaobject adjacent to both the media object and the position editing tool,wherein the media object and the at least one other media object includefirst presentation attributes within the document; receive, from theclient device, user input moving the group of the media object and theat least one other media object to a new position in the document bymoving the position editing tool to the new position; determine, by thecreate module, second presentation attributes for the first media objectand the at least one other media object based on the new position in thedocument and the first presentation attributes; generate, by the createmodule, a media presentation from the document using at least the secondpresentation attributes; and publish, by the publish module, the mediapresentation over the network.